package com.uaf.vxalipaybill.provider.service.write;

import java.util.Map;

import com.uaf.api.vo.req.BaseReqVo;
import com.uaf.vxalipaybill.api.vo.req.VxAlipayBillAuthReqVo;
import com.uaf.vxalipaybill.api.vo.resp.VxAlipayBillAuthRespVo;
import com.uaf.vxalipaybill.provider.bean.VxAlipayBillAnalysisReqBean;

/**
 * @filename IVxAlipayBillWriteService.java
 * @description 微信支付宝账单
 * @author 马庆智
 * @date 2021/9/15 11:06
 */
public interface IVxAlipayBillWriteService {

	/**
	 * 功能描述 微信支付宝账单授权解析
	 * @param  req   微信支付宝请求入参
	 * @return vxAlipayBillAuthRespVo 授权状态
	 * @author 马庆智
	 * @date 2021/9/10 10:04
	 */
	VxAlipayBillAuthRespVo vxAlipayAuth(BaseReqVo<VxAlipayBillAuthReqVo> req);

	/**
	 * 功能描述 删除指定天数之前的邮件
	 * @param deleteDay 要删除的天数邮件
	 * @author 马庆智
	 * @date 2021/9/28 14:08
	 */
	void deleteMailContent(int deleteDay);

	/**
	 * 功能描述 本地pdf识别和文件上传
	 * @param req 请求参数
	 * @param urlMap  要解析的文件夹路径
	 * @author 马庆智
	 * @date 2021/10/18 15:42
	 */
	void distinguishPdfAndUpload(BaseReqVo<VxAlipayBillAuthReqVo> req, Map<String, String> urlMap);

	/**
	 * 微信支付宝缓存处理
	 * @param businessId 业务编号
	 * @param vxAlipayBillAnalysisReqBean 历史解析请求信息
	 * @param cacheDays
	 * @return void
	 * @author 王承
	 * @date 2021/12/30 15:22
	 */
	boolean isCache(String businessId, VxAlipayBillAnalysisReqBean vxAlipayBillAnalysisReqBean, Integer cacheDays);

}
